// function A() {
//     let a = 1
//     window.B = function() {
//         console.log(a);
//     }
// }

// A()
// B()

for(var i = 1; i <= 5; i++) {
    (function(j) {
        // setTimeout作为内部函数执行
        setTimeout(() => {
            console.log(j);
        }, j*1000)
    })(i)
}

for(var i = 1; i <= 5; i++) {

        setTimeout(function(j) {
            console.log(j);
        }, i*1000, i)
}

for(let i = 1; i <= 5; i++) {
    // 块级作用域
    setTimeout(() => {
        console.log(j);
    }, i*1000)
}